package com.ddzh.web;

import com.ddzh.entity.Result;
import org.springframework.web.bind.annotation.ExceptionHandler;
import org.springframework.web.bind.annotation.RestControllerAdvice;

/**
 * 异常处理类：将所有的异常抛到controller层处理，springmvc的统一异常处理
 * 一旦设置了统一异常处理，对于前端来说，所有的数据都是请求成功得了
 */
@RestControllerAdvice
public class GlobalExceptionHandler {
    /*
    正常返回一个字符串，这样后端可以结束了，但是前端怎么拿到数据呢？？
    前端无法直接拿到这个字符串数据
    ==》需要将错误信息封装到一个结果集Result中，返回Result类型对象即可
     */
    @ExceptionHandler
    public Result exceptionHandle(Exception e){
//        if (e.getMessage().length()>200) {
//            return new Result(false, e.getMessage().substring(0,200)+"...");
//        }else{
            return new Result(false, e.getMessage());
//        }
    }
}
